package com.sew.sewweb.api.bean;


import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;


/**
 * @author Guoan
 * @date 2024/12/9 - 13:52
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Schema(name = "e2系统调用接口生成采购申请书",description = "生成采购申请书")
public class DataParam {

    @Schema(name = "采购申请号",example = "")
    @JsonProperty("PRNo")
    String PRNo;//采购申请号

    @Schema(name = "申请日期",required = true)
    @JsonProperty("PRDate")
    String PRDate;//申请日期

    @Schema(name = "工号",required = true)
    @JsonProperty("Requestedby")
    String Requestedby;//工号

    @Schema(name = "填报人",required = true)
    @JsonProperty("Requestor")
    String Requestor;//填报人

    @Schema(name = "申请人部门",required = true)
    @JsonProperty("RequestDeptCode")
    String RequestDeptCode;//申请人部门

    @Schema(name = "申请人部门名称",required = true)
    @JsonProperty("RequestDeptName")
    String RequestDeptName;//申请人部门名称

    @Schema(name = "实体",required = true)
    @JsonProperty("Entity")
    String Entity;//实体     SEW, SIG, SCH，SEWFS

    @Schema(name = "实体",required = true)
    @JsonProperty("Capital")
    String Capital;//是否固定资产     1固定资产 0 非固定资产

    @Schema(name = "固定资产号",required = true)
    @JsonProperty("InvestmentNo")
    String InvestmentNo;//固定资产号

    @Schema(name = "预算总金额",required = true)
    @JsonProperty("BudgetAmount")
    String BudgetAmount;//预算总金额

    @Schema(name = "成本中心号",required = true)
    @JsonProperty("CCN")
    String CCN;//成本中心号

    @Schema(name = "是否卖废品",required = true)
    @JsonProperty("SaleScrap")
    String SaleScrap;//是否卖废品    1=卖废品 0=非卖废品

    @Schema(name = "急单",required = true)
    @JsonProperty("Urgent")
    String Urgent;//急单

    @Schema(name = "用于",required = true)
    @JsonProperty("UsedFor")
    String UsedFor;//用于

    @Schema(name = "内部说明",required = true)
    @JsonProperty("Explanation")
    String Explanation;//内部说明

    @Schema(name = "预算总金额范围",required = true)
    @JsonProperty("EstimatedTotalAmountRange")
    String EstimatedTotalAmountRange;//预算总金额范围

    @Schema(name = "预估总金额最小值",required = true)
    @JsonProperty("EstimatedAmountMin")
    String EstimatedAmountMin;//预估总金额最小值

    @Schema(name = "预估总金额",required = true)
    @JsonProperty("EstimatedAmountMax")
    String EstimatedAmountMax;//预估总金额

    @Schema(name = "申请类型编码",required = true)
    @JsonProperty("PRTypeCode")
    String PRTypeCode;//申请类型编码    各编码对应的名称：1:EHS  2:IT  3:协议类付款的采购申请

    @Schema(name = "申请类型名称",required = true)
    @JsonProperty("PRTypeName")
    String PRTypeName;//申请类型名称

    @Schema(name = "研发编码",required = true)
    @JsonProperty("RDCode")
    String RDCode;//研发编码

    @Schema(name = "质量编码",required = true)
    @JsonProperty("QCode")
    String QCode;//质量编码

    @Schema(name = "安全号",required = true)
    @JsonProperty("SecurityCode")
    String SecurityCode;//安全号

    @Schema(name = "部门内部编码",required = true)
    @JsonProperty("CodebyDept")
    String CodebyDept;//部门内部编码

    @Schema(name = "是否紧急会签",required = true)
    @JsonProperty("IsPromiseOrder")
    String IsPromiseOrder;//是否紧急会签

    @Schema(name = "公司代码",required = true)
    @JsonProperty("BU")
    String BU;//公司    天津SEWTJ、佛山SEWFS

    @Schema(name = "附件",required = true)
    @JsonProperty("Attachments")
    String Attachments;//附件Id

    @Schema(name = "子表数据",required = true)
    @JsonProperty("PRItems")
    List<DataDetails> PRItems;//明细表数据

}
